#pragma once

namespace mt::sql_template
{

    const char* CreatureData_Loader = "SELECT `creature`.`guid`, `creature`.`id`, `map`, `modelid`,"
        //   4             5           6           7           8            9              10         11
        "`equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`,"
        //   12         13       14          15            16
        "`curhealth`, `curmana`, `DeathState`, `MovementType`, `event`,"
        //   17                        18
        "`pool_creature`.`pool_entry` AS GuidPoolId, `pool_creature_template`.`pool_entry` AS EntryPoolId "
        "FROM `creature` "
        "LEFT OUTER JOIN `game_event_creature` ON `creature`.`guid` = `game_event_creature`.`guid` "
        "LEFT OUTER JOIN `pool_creature` ON `creature`.`guid` = `pool_creature`.`guid` "
        "LEFT OUTER JOIN `pool_creature_template` ON `creature`.`id` = `pool_creature_template`.`id`";

    const char* GameObjectData_Loader = "SELECT `gameobject`.`guid`, `gameobject`.`id`, `gameobject`.`map`, `gameobject`.`position_x`, `gameobject`.`position_y`, `gameobject`.`position_z`, `gameobject`.`orientation`, "
        //          7                     8                     9                     10                    11                        12                       13
        "`gameobject`.`rotation0`, `gameobject`.`rotation1`, `gameobject`.`rotation2`, `gameobject`.`rotation3`, `gameobject`.`spawntimesecs`, `gameobject`.`animprogress`, `gameobject`.`state`, "
        //                      14                      15                                   16
        "`game_event_gameobject`.`event`, `pool_gameobject`.`pool_entry` AS GuidPoolId, `pool_gameobject_template`.`pool_entry` AS EntryPoolId "
        "FROM `gameobject` "
        "LEFT OUTER JOIN `game_event_gameobject` ON `gameobject`.`guid` = `game_event_gameobject`.`guid` "
        "LEFT OUTER JOIN `pool_gameobject` ON `gameobject`.`guid` = `pool_gameobject`.`guid` "
        "LEFT OUTER JOIN `pool_gameobject_template` ON `gameobject`.`id` = `pool_gameobject_template`.`id`";

    const char* PoolCreatureTemplate_Loader = "SELECT `guid`, `pool_entry`, `chance`, `pool_creature_template`.`id` FROM `pool_creature_template` LEFT JOIN `creature` ON `creature`.`id` = `pool_creature_template`.`id`";

    const char* PoolGameObjectTemplate_Loader = "SELECT `guid`, `pool_entry`, `chance`, `pool_gameobject_template`.`id` FROM `pool_gameobject_template` LEFT JOIN `gameobject` ON `gameobject`.`id` = `pool_gameobject_template`.`id`";

}